pixbuf-demo: Use draw signal
authorBenjamin Otte <otte@redhat.com>
Wed, 8 Sep 2010 22:58:30 +0000 (00:58 +0200)
committerBenjamin Otte <otte@redhat.com>
Sun, 26 Sep 2010 13:11:41 +0000 (15:11 +0200)
demos/pixbuf-demo.c

index 51977d258155f971629ec48850e6e7e75d38ddfe..3c3b261ba5a2719b4a57cdb402fb8f948423466d 100644 (file)
@@ -86,17 +86,11 @@ load_pixbufs (void)
 }
 
 /* Expose callback for the drawing area */
-static gint
-expose_cb (GtkWidget *widget, GdkEventExpose *event, gpointer data)
+static gboolean
+draw_cb (GtkWidget *widget, cairo_t *cr, gpointer data)
 {
-        cairo_t *cr;
-         
-        cr = gdk_cairo_create (event->window);
         gdk_cairo_set_source_pixbuf (cr, frame, 0, 0);
-        gdk_cairo_rectangle (cr, &event->area);
-        cairo_fill (cr);
-
-        cairo_destroy (cr);
+        cairo_paint (cr);
 
        return TRUE;
 }
@@ -214,8 +208,8 @@ main (int argc, char **argv)
 
        da = gtk_drawing_area_new ();
 
-       g_signal_connect (da, "expose_event",
-                         G_CALLBACK (expose_cb), NULL);
+       g_signal_connect (da, "draw",
+                         G_CALLBACK (draw_cb), NULL);
 
        gtk_container_add (GTK_CONTAINER (window), da);